The present invention relates generally to the field of relational database, and more particularly to querying of relational databases. A relational table may be vertically divided to multiple tables and may share only the “key” column across the divided tables. This is a common practice for a relation representing an entity with extended sets of attributes. An example is a relation to store customer information. Commonly collected attributes such as name, address, and telephone numbers could be stored in a “main” table. Optional attributes then are stored in an “auxiliary” table sharing with the “main” table only the customer “id” column. Another application of this principle is storing each set of customer attributes collected from one source to one table. Here common columns other than the “id” column may be resolved using some application rules.
Predicate pushdown is a known technique in the field of responding to database queries written in query language, like SQL. In conventional predicate pushdown, a query includes a predicate that: (i) includes a join type operator (see definition below in Definitions sub-section of the Detailed Description section) that renders a scope of the first query to be inclusive of a plurality of tables, (ii) includes a row limiting operator (see definition below in Definitions sub-section of the Detailed Description section) that effectively excludes at least some of the rows of one of the tables of the plurality of tables, and (iii) is written so that the join type operation precedes the row limiting operator. Under conventional predicate pushdown, the foregoing type of query is responded to performing the following steps in the following order: (i) applying the row limiting operator to the single table, to which it applies, out of the plurality of tables such that the single table becomes a row limited table, and (ii) applying the join type operator to the plurality of tables (including the single table that was previously row limited in the previous step) to yield what will herein be referred to as a “row limited joined table.”